package org.example.Server.service.paper;


import org.example.Server.model.paper.*;
import org.example.Server.model.question.Question;
import org.example.Server.utils.ResultAPI;

import java.util.List;


public interface PaperPersonalService {


    public ResultAPI addPaperHeader(PaperHeader paperHeader);

    public ResultAPI addPaperQsBySelf(PaperQsDTO questionPaper);

    public ResultAPI addPaperQsByQuestionStore(PaperQsStoreDTO paperQsStoreDTO);

    public ResultAPI getPaperHeaderLsit(Integer techId, Integer directionId, Integer difficulty);

    public ResultAPI getPaperById(Integer paperId);

    public ResultAPI updateQsformat(PaperFormat paperFormat);

    public ResultAPI updateQsMaxscore(PaperQsUpdate paperQsUpdate);

    public ResultAPI updatePaperQs(PaperQsUpdate paperQsUpdate);

    public ResultAPI getPaperSetting(Integer paperId);

    public ResultAPI updatePaperSetting(PaperSetting paperSetting);

    public ResultAPI deletePapers(List<Integer> ids);

    /**
     * 删除试卷中的试题，但是因为试卷中的题目其实都是复制出来的
     * 所以好像只传qs也可以（那么就可以用删除试题的接口了）
     *
     * @param paper_qs_ids
     * @return
     */
    public ResultAPI deletePaperQs(List<Integer> paper_qs_ids);

    public void CopyQses(List<Question> questionList, Integer techId, Integer paperId);
}
